package util

import (
	"log"
	"os"
)

type LoggerUtil struct {
	*log.Logger
	File *os.File
}

// Sync 立刻刷新日志
func (l *LoggerUtil) Sync() error {
	return l.File.Sync()
}

func (l *LoggerUtil) PrintlnWithSync(v ...interface{}) {
	l.Logger.Println(v...)
	l.File.Sync() // 手动刷新文件缓冲区
}

func (l *LoggerUtil) PrintfWithSync(format string, v ...any) {
	l.Logger.Printf(format, v...)
	l.File.Sync() // 手动刷新文件缓冲区
}
